import 'package:get/get.dart';
import 'package:top_foundation/component/dialog/dialog/index.dart';
import 'package:top_foundation/component/dialog/index.dart';

import '../../../../../../helper/global/user/logic.dart';
import '../../../../../../helper/utils/util.dart';
import 'index.dart';

class ValidateInputController extends GetxController {
  ValidateInputController();

  final state = ValidateInputState();

  // tap
  void actionValidate() async {
    if (state.pwd.isEmpty) {
      Hud.toast('请输入密码');
      update();
      return;
    }
    var action = await showWindow(
        m: DialogModel(
      title: '是否确认注销',
      msg: '您确定要注销账号吗？此操作将永久删除您的个人信息和所有数据，且无法恢复。请谨慎操作！',
    ));
    if (action == 1) {
      requestForValidate();
    }
  }

  void requestForValidate() async {
    var res = await Api.validate(state.pwd);
    if (res.isSuccess) {
      Hud.toast('您的账号已注销');
      UserController.instance.loginOutSuccess();
      Get.offAllNamed(RouterPath.login);
    }
  }

  /// 在 widget 内存中分配后立即调用。
  @override
  void onInit() {
    super.onInit();
  }

  /// 在 onInit() 之后调用 1 帧。这是进入的理想场所
  @override
  void onReady() {
    super.onReady();
  }

  /// 在 [onDelete] 方法之前调用。
  @override
  void onClose() {
    super.onClose();
  }

  /// dispose 释放内存
  @override
  void dispose() {
    super.dispose();
  }
}
